import { ajax } from '@/utils'

const baseUrl = '/system/config'

export default {
  getConfigPage(...args: IGetConfigPageReq): Promise<IGetConfigPageRes> {
    return ajax.post(`${baseUrl}/page`, args[0])
  },
  getConfigValue(...args: IGetConfigValueReq): Promise<IGetConfigValueRes> {
    return ajax.get(`${baseUrl}/configKey/${args[0]}`)
  },
  createConfig(...args: ICreateConfigReq): IVoidRes {
    return ajax.post(`${baseUrl}/create`, args[0])
  },
  updateConfig(...args: IUpdateConfigReq): IVoidRes {
    return ajax.put(`${baseUrl}/update/${args[0]}`, args[1])
  },
  deleteConfig(...args: IDeleteReq): IVoidRes {
    return ajax.delete(`${baseUrl}/delete`, { data: args[0] })
  },
  exportConfigPage(...args: IGetConfigPageReq): IExportRes {
    return ajax.post(`${baseUrl}/export`, args[0], { responseType: 'blob' })
  }
}
